namespace mplat {
    export interface IBannerStyle {
        left?: number;
        top?: number;
        width?: number;
        height?: number;
    }
    export interface IBannerInfo {
        /** banner的id列表，默认都是用第一个 */
        ids: string[];
        /** banner的样式，默认在中间下方, 只需要传入一个width就好，位置会重设刷新 */
        style?: IBannerStyle;
        /** 隐藏即销毁 */
        hideIsDestroy?: boolean;
        /** 重新刷新的时间(如果设置了aliveTime，则这里传0) */
        refreshTime?: number;
        /** 实例存在时间，时间到了就销毁，如果还在显示则重新创建一个新的banner, <=0则无效 */
        aliveTime?: number;
        /** 预加载banner时的回调 */
        preload?: () => void;
        /** 加载完成，可以显示banner，一般可以用于埋点 */
        loadSuccess?: () => void;
        /** banner错误 */
        bannerErr?: (err?) => void;
        /** 显示banner，一般可以用于埋点 */
        shown?: () => void;
        /** 刷新尺寸位置 */
        resize?: (res) => { left: number, top: number };
    }
    export interface IBannerAd {
        /** 设置banner的数据 */
        setInfo(info: IBannerInfo);
        /** 显示banner广告，参数为是否只显示在长屏幕手机上，如果是短屏手机，则会关闭banner */
        showBannerAd(justShowByLongPhone?: boolean, adIdx?: number, resize?: (res: any) => { left: number, top: number });
        /** 隐藏banner广告，destroy为是否强行隐藏就销毁 */
        hideBannerAd(destroy?: boolean);
    }
}